Compiler-assisted multiple instruction rollback recovery using a read buffer - Computers, IEEE Transactions on
نویسنده
چکیده
Abstrucf-Multiple instruction rollback (MIR) is a technique that has been implemented in mainframe computers to provide rapid recovery from transient processor failures. Hardwarebased MIR designs eliminate rollback data hazards by providing data redundancy implemented in hardware. Compiler-based MIR designs have also been developed which remove rollback data hazards directly with data-flow transformations. This paper describes compiler-assisted techniques to achieve multiple instruction rollback recovery. We observe that some data hazards resulting from instruction rollback can be resolved efficiently by providing an operand read buffer while others are resolved more efficiently with compiler transformations. The compiler-assisted scheme presented consists of hardware that is less complex than shadow files, history files, history buffers, or delayed write buffers, while experimental evaluation indicates performance improvement over compiler-based schemes.
منابع مشابه
Compiler-Assisted Multiple Instruction Rollback Recovery Using a Read Buffer
Multiple instruction rollback (MIR) is a technique that has been implemented in mainframe computers to provide rapid recovery from transient processor failures. Hardware-based MIR designs eliminate rollback data hazards by providing data redundancy implemented in hardware. Compilerbased MIR designshave also been developed which remove rollbackdata hazards directlywith data-flowtransformations. ...
متن کاملBranch Recovery with Compiler-Assisted Multiple Instruction Retry
In processing systems where rapid recovery from transient faults is important, schemes for multiple instruction rollback recovery may be appropriate. Multiple instruction retry has been implemented in hardware by researchers and also in mainframe computers. This paper extends compiler-assisted instruction retry to a broad class of code execution failures [l]. Five benchmarks were used to measur...
متن کاملCompiler-Assisted Multiple Instruction Retry
This paper describes a compiler-assisted approach to providing multiple instruction rollback capability for general purpose processor registers. The objective is achieved by having the compiler remove all forms of N -instruction anti-dependencies. Pseudo register anti-dependencies are removed by loop protection, node splitting, and loop expansion techniques; machine register antidependencies ar...
متن کاملConcurrent Checkpointing and Recovery in Distributed Systems
This paper studys concurrency issues in disUibuled checkpointing and rollback recovery. It transforms the concurrent checkpointing and recovery problem to a transaction processing problem. A new transaction model, which consists of four types of atomic operations and five types of conflicts, is used for disuibuted checkpointing and recovery. Each transaction is executed by multiple processes in...
متن کاملExtending Value Reuse to Basic Blocks with Compiler Support
Speculative execution and instruction reuse are two important strategies that have been investigated for improving processor performance. Value prediction at the instruction level has been introduced to allow even more aggressive speculation and reuse than previous techniques. This study suggests that using compiler support to extend value reuse to a coarser granularity than a single instructio...
متن کامل